package com.zzyl.serve.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zzyl.nursing.domain.Elder;
import com.zzyl.nursing.dto.RescheduleTaskForm;
import com.zzyl.serve.domain.NursingTask;
import com.zzyl.serve.dto.DoDto;
import com.zzyl.serve.dto.NursingTaskDto;
import com.zzyl.serve.vo.IdTaskVo;
import com.zzyl.serve.vo.NursingTaskVO;

import java.util.List;

/**
 * TODO
 *
 * @Author mr.wu
 * @Date 2025/10/29 16:40
 */
public interface INursingTaskService extends IService<NursingTask> {

    /**
     * 查询护理任务
     * @param
     * @return
     */
    /**
     * 生成月度护理任务
     * @param elder 老人信息
     */
    void generateMonthlyTask(Elder elder);

    /**
     * 取消任务
     * @param reason
     * @param taskId
     */
    void cancelTask(String reason, Long taskId);

    /**
     * 查询护理任务列表
     * @param dto
     * @return
     */
    List<NursingTaskVO> tasklist(NursingTaskDto dto);

    /**
     * 执行任务
     * @param dto
     */
    void doTask(DoDto dto);

    /**
     * 修改任务时间
     * @param
     */
    void updateTime(RescheduleTaskForm rescheduleTaskForm);

    /**
     * 根据ID查询任务
     * @param id
     * @return
     */
    IdTaskVo getByid(Long id);
}